import request from '@/utils/request'

/*************************************** 党组织机构 ***************************************/

// 党组织机构列表
export function getZuzhiList() {
  return request({
    url: '/web/dj/zuZhi/list',
    method: 'get',
    jy: true
  })
}

// 根据党组织机构编号获取详细信息
export function getZuzhiDetail(djDeptId) {
  return request({
    url: `/web/dj/zuZhi/${djDeptId}`,
    method: 'get',
    jy: true
  })
}

// 新增党组织机构
export function addZuzhi(data) {
  return request({
    url: `/web/dj/zuZhi/add`,
    method: 'post',
    data,
    jy: true
  })
}

// 修改党组织机构
export function editZuzhi(data) {
  return request({
    url: `/web/dj/zuZhi/edit`,
    method: 'PUT',
    data,
    jy: true
  })
}

// 删除党组织机构
export function deleteZuzhi(id) {
  return request({
    url: `/web/dj/zuZhi/${id}`,
    method: 'delete',
    jy: true
  })
}

/*************************************** 党组织角色 ***************************************/

// 党组织角色列表
export function getRolePage(params) {
  return request({
    url: '/web/dj/role/page',
    method: 'get',
    params,
    jy: true
  })
}

// 根据党组织角色编号获取详细信息
export function getRoleDetail(djDeptId) {
  return request({
    url: `/web/dj/role/${djDeptId}`,
    method: 'get',
    jy: true
  })
}

// 新增党组织角色
export function addRole(data) {
  return request({
    url: `/web/dj/role/add`,
    method: 'post',
    data,
    jy: true
  })
}

// 修改党组织角色
export function editRole(data) {
  return request({
    url: `/web/dj/role/edit`,
    method: 'PUT',
    data,
    jy: true
  })
}

// 删除党组织角色
export function deleteRole(id) {
  return request({
    url: `/web/dj/role/${id}`,
    method: 'delete',
    jy: true
  })
}

// 获取角色选择框列表
export function getRoleOption() {
  return request({
    url: `/web/dj/role/optionselect`,
    method: 'get',
    jy: true
  })
}

/*************************************** 党组织用户 ***************************************/

// 党组织用户列表
export function getUserPage(params) {
  return request({
    url: '/web/dj/user/page',
    method: 'get',
    params,
    jy: true
  })
}

// 根据党组织用户编号获取详细信息
export function getUserDetail(params) {
  return request({
    url: `/web/dj/user/getInfo`,
    method: 'get',
    params,
    jy: true
  })
}

// 新增党组织用户
export function addUser(data) {
  return request({
    url: `/web/dj/user/add`,
    method: 'post',
    data,
    jy: true
  })
}

// 修改党组织用户
export function editUser(data) {
  return request({
    url: `/web/dj/user/edit`,
    method: 'PUT',
    data,
    jy: true
  })
}

// 删除党组织用户
export function deleteUser(id) {
  return request({
    url: `/web/dj/user/${id}`,
    method: 'delete',
    jy: true
  })
}

// 用户原本所属的机构下拉框
export function getDeptOption() {
  return request({
    url: `/web/dj/user/getConDepartmentList`,
    method: 'get',
    jy: true
  })
}

// 用户原本所属的机构下拉框
export function getUserOption(params) {
  return request({
    url: `/web/dj/user/getDepartmentUserList`,
    method: 'get',
    params,
    jy: true
  })
}

/*************************************** 党费收缴 ***************************************/

// 党费缴纳数据的党组织机构列表
export function getCostDeptOption() {
  return request({
    url: `/web/dj/cost/djDeptList`,
    method: 'get',
    jy: true
  })
}

// 党费缴纳数据的应缴日期下拉框
export function getCostTimeOption() {
  return request({
    url: `/web/dj/cost/djTimeList`,
    method: 'get',
    jy: true
  })
}

// 党费缴纳列表
export function getCostPage(params) {
  return request({
    url: `/web/dj/cost/pageByDept`,
    method: 'get',
    params,
    jy: true
  })
}

// 删除党费缴纳
export function deleteCost(params) {
  return request({
    url: `/web/dj/cost/deleteByDept`,
    method: 'delete',
    params,
    jy: true
  })
}

// 党员缴纳列表
export function getCostUserPage(params) {
  return request({
    url: `/web/dj/cost/page`,
    method: 'get',
    params,
    jy: true
  })
}

// 查看缴纳党员详情
export function getCostUserDetail(params) {
  return request({
    url: `/web/dj/cost/getInfo`,
    method: 'get',
    params,
    jy: true
  })
}

// 新增缴纳党员
export function addCostUser(data) {
  return request({
    url: `/web/dj/cost/add`,
    method: 'POST',
    data,
    jy: true
  })
}

// 修改缴纳党员
export function editCostUser(data) {
  return request({
    url: `/web/dj/cost/update`,
    method: 'PUT',
    data,
    jy: true
  })
}

// 删除缴纳党员
export function deleteCostUser(id) {
  return request({
    url: `/web/dj/cost/${id}`,
    method: 'DELETE',
    jy: true
  })
}

// 党组织机构里的用户下拉框
export function getCostUserOption(params) {
  return request({
    url: `/web/dj/user/getDjtUserList`,
    method: 'get',
    params,
    jy: true
  })
}

// 获取当前登陆用户在党组织机构中的角色
export function getLoginUser() {
  return request({
    url: `/web/dj/user/getLoginUser`,
    method: 'get',
    jy: true
  })
}


/*************************************** 书记信箱 ***************************************/

// 党员写信时接收人列表
export function getLetterReceive() {
  return request({
    url: `/web/dj/letter/getLetterReceive`,
    method: 'get',
    jy: true
  })
}

// 党员信件信息分页
export function getLetterPage(params) {
  return request({
    url: `/web/dj/letter/page`,
    method: 'get',
    params,
    jy: true
  })
}

// 删除信件
export function removeLetter(params) {
  return request({
    url: `/web/dj/letter/remove/${params.djLetterIds}`,
    method: 'DELETE',
    params,
    jy: true
  })
}

// 党员写信时填充的字段详情
export function getLetterFill() {
  return request({
    url: `/web/dj/letter/getLetterFill`,
    method: 'get',
    jy: true
  })
}

// 党员添加信件信息
export function addLetter(data) {
  return request({
    url: `/web/dj/letter/add`,
    method: 'post',
    data,
    jy: true
  })
}

// 获取信件详细信息
export function getLetterInfo(params) {
  return request({
    url: `/web/dj/letter/getLetterInfo`,
    method: 'get',
    params,
    jy: true
  })
}

// 党员撤销信件
export function cancelLetter(params) {
  return request({
    url: `/web/dj/letter/cancelLetter/${params.djLetterId}`,
    method: 'DELETE',
    params,
    jy: true
  })
}

// 支部管理员与总支管理员未回复的信件信息
export function unreadLetterPage(params) {
  return request({
    url: `/web/dj/letter/unreadLetterPage`,
    method: 'get',
    params,
    jy: true
  })
}

// 支部管理员与总支管理员未回复的信件信息
export function replyLetter(data) {
  return request({
    url: `/web/dj/letter/replyLetter`,
    method: 'POST',
    data,
    jy: true
  })
}